查看原文
其他

XSKY容器方案通过Veeam验证,可实现云原生应用的存储、备份和容灾

云端数据管理 XSKY星辰天合
2024-11-01



发展云原生生态圏是 Veeam的又一重要战略,以Kasten by Veeam为圆心,这个战略又分为三个重要的组成部分,公有云厂商、K8S分发版本和云原生存储厂商。云原生的领域中,与云原生生态所适配的存储已经成为大家所关注的热点。


Veeam China在中国的云原生生态战略布局中也积极的与国内多家云原生存储厂商合作。XSKY CSI容器存储解决方案,已经助力多家企业实现云原生存储转型,是国内率先通过K8S CSI认证的SDS厂商,同时,还是国内加入CNCF Landscape全景图的SDS厂商之一。

近日,Veeam China通过实测验证了XSKY CSI容器存储解决方案,可实现云原生应用的存储、备份和容灾。现将实测验证过程予以转发,以飨读者。


验证目标




在本次验证场景中,我们将结合XSKY CSI 容器存储解决方案保护云原生应用的方式。

  • 利用Kubestr对云原生存储进行评测
  • 利用K10对存储CSI API进行调用生成快照,达成最快速的RPO 与RTO的备份与恢复
  • 利用XSKY对象存储,将快照数据导出到对象存储桶上,实现了异地容灾与数据长期保留


达成效果
  • 利用XSKY CSI快照,在本地Kubenetes环境,云原生应用的快速备份与恢复(利用CSI快照)

  • 利用XSKY对象存储,在本地形成长期保留

  • 利用Kasten K10直接将数据容灾到远端,或利用XSKY对象存储实现存储桶的复制,实现 3-2-1-1-0的数据保护




Kasten 与 XSKY




Kasten是Veeam在Kubernetes平台的数据管理解决方案,通过部署Kasten K10企业可以安全地备份和还原、执行灾难恢复以及迁移云原生的应用、Kubernetes集群资源和持久卷等存储资源,解决用户备份、灾难恢复、迁移过程中的数据管理问题,提高云原生环境数据管理的便捷性,帮助用户降低灾备成本,提高生产执行效率。


XSKY星辰天合作为国内率先通过K8S CSI认证的SDS厂商,同时也是加入CNCF Landscape全景图的SDS厂商之一,针对企业云原生业务提出了基于软件定义存储(SDS)的容器存储解决方案。解决了需要敏捷性、并能够同时访问多个应用程序容器的数据流动性问题,同时还提供包括快照、克隆和复制等高级存储特性。

  • 标准接口,统一存储:实现标准的K8S CSI接口,无缝支持K8S生态,支持 iSCSI和NFS两种接口,实现块和文件的统一存储。
  • 存算分离,稳定可靠:将计算和存储分离,实现资源隔离,可独立对存储集群进行扩容;基于数千个企业级生产案例的最佳实践,XSKY星辰天合分布式存储为容器平台提供稳定可靠的保障。
  • 性能卓越,特性丰富:可根据应用需要提供SSD、混合盘以及全HDD等存储资源,通过XSKY SDS IO全路径的性能优化能力,获得卓越性能;除了支持裸设备、卷扩容、卷克隆、卷快照和QoS等基础特性,也支持延展集群和MPIO等高级特性。



测试环境配置检查




检查 Nodes 及其资源
测试环境如下,由三个Nodes组成, 一个Master与两个Worker

检查CSI Driver是否部署成功
安装driver,所有pod状态为running,部署成功。关于XSKY CSI Driver部署,请联系XSKY专业人员。

检查 K8S api-versions
版本最低要求为v1beta1

配置测试环境存储与快照类




配置 storageclass
设置存储类为默认

配置 volumesnapshotclass
设置快照类为注释提示K10进行调用

用 Kasten kubestr 进行评测




Kubestr是一个简单的轻量级工具,用于评估集群中的存储选项。它可以帮助您发现、验证和评估您的kubernetes云原生存储,以明确当前配置的状态与存储能力是否满足应用的要求。当比较跨多个集群、云平台与存储选项的性能时,还可以通过切换Kubeconfig使其跨多个集群运行。

Kubestr的安装
下载Kubestr, 从如下链接可以直接下载您所需要的Kubestr版本

https://github.com/kastenhq/kubestr/releases/tag/v0.4.17

用wget可以直接获取Kubestr软件包, 并解包

检查kubenetes 环境与Storage Provisioners

进行快照功能测试
目的是简单快速的进行快照功能的验证,在验证过程中,kubestr会创建一个Pod,在其上绑定PVC,再对其进行Clone操作。
测试过程中,我们可以查看Pod和绑定的PVC

进行简单的性能测试
性能测试的默认用例将涉及如下场景,同时默认的存储性能测试会创建一个100G的卷,如果您希望调整测试场景与卷大小,可使用-f来写配置文件,-z选项来指定卷的大小。详细情况见如下的帮助提示。

  • blocksize=4K filesize=2G iodepth=64 rw=randread

  • blocksize=4K filesize=2G iodepth=64 rw=randwrite

  • blocksize=128K filesize=2G iodepth=64 rw=randread

  • blocksize=128k filesize=2G iodepth=64 rw=randwrite



安装 Kasten K10 到 K8S 集群




获取Helm Chart供本地使用

建立名空间

安装Kasten K10
目前在不同的K8S环境下部署K10有很多参数需要设置,此时我们需要查阅部署参数。

确认Kasten K10 Pod及Service的部署情况

访问K10控制台
通过查看K8S Service,我们可以看到K10的ingress配置,其中的Gateway-ext,查看访问K10的IP地址,访问 http://10.252.3.229:31940/k10/#
用Chrome浏览器访问http://10.252.3.229:31940/k10/#


Kasten On XSKY保护云原生应用测试




测试应用mysql的安装

应用程序发现
在应用程序安装完成之后,我们就可以在Application列表中发现这个应用了


应用程序的备份与恢复

·建立MySQL数据集


·创建Policy保护MySQL应用
创建Policy保护MySQL应用,之后点击Run Once
查看Dashboard中的快照备份已经完成,并生成了还原点。
查看系统中快照已经生成

·模拟灾难 删除MySQL数据

·还原MySQL数据
要恢复丢失的数据,我们需要使用之前创建的备份时间点,进行Policy的Restore 操作,在这里我们新建一个namespace mysql-resore1。
在恢复的过程中我们可以观察Dashboard或从命令行查看新的Namesspace中Pod的部署情况, 这时查看系统可以发现K10利用快照Clone出的新的PVC, DataSource 为Snapshot , k10-csi-snap-c6j28vzklskt59s8

·查看还原后的MySQL数据
查看已经删除的数据表,可以看到数据已经恢复了

将数据Export到XSKY的对象存储




创建Location Profile


编辑Policy设定将快照备份导出到XSKY对象存储


点击Run Once运行新规则


查看数据备份进程
如下图,我们可以看到数据已经Export到S3Bucket,并且意识到这是数据库应用,自动开启Kanister应用感知的备份。
从XSKY的S3存储桶上可以浏览到,数据已经存在

利用对象存储库的备份集进行恢复
查看还原的进程,


从K8S上确认数据已经恢复

从Kasten K10上观察存储库的数据使用情况


利用存储桶复制的方法避免人为错误
在日常运维过程中,有时会因为人为的原因导致本地的存储桶数据丢失。这时我们可以使用XSKY对象存储的桶复制功能,直接将存储桶的数据复制到远端,在设置桶复制规则时,可以设置为禁用删除操作,这样我们就可以避免人为或逻辑错误,从远端的存储桶恢复数据了。


恢复时,我们只要选择Alternate Location Profile,并选择目标存储桶。本次的实验环境为源端:XSKY-S3-bucket, 目标端:S3-bucket


总结




我们验证了结合XSKY CSI容器存储解决方案保护云原生应用的方法。首先,我们利用Kubestr对云原生存储进行评测,并使用K10对存储CSI进行调用生成快照,达成最快速的RPO与RTO的备份与恢复,最后,我们利用XSKY的对象存储及桶复制功能,将快照数据导出到对象存储桶上,实现了异地容灾与数据长期保留,欢迎与我们讨论您的观点与想法!

参考资料




  • Kubernetes Container Storage Interface (CSI) Documentation
    https://kubernetes-csi.github.io/docs
  • Kasten k10 实战系列 03 CSI 存储快照适配
    https://www.data2clouds.com/?p=69
  • Kasten k10 实战系列 04 - 利用 Kubestr 进行云原生存储能力评测
    https://www.data2clouds.com/?p=71
  • Kasten K10 系统需求
    https://docs.kasten.io/latest/operating/footprint.html
  • 详解支持 kubernetes CSI的持久化容器存储
    https://www.xsky.com/tec/5609/
  • 同时支持iSCSI和NFS,XSKY SDS V5的K8S CSI卷扩展功能是如何炼成的
       https://zhuanlan.zhihu.com/p/413226030
  • XSKY 星辰天合云原生容器存储解决方案
    https://www.xsky.com/solution-cloud-native/
  • Complete List of K10 Helm Options
    https://docs.kasten.io/latest/install/advanced.html

END




如想了解更多产品信息扫码联系XSKY星辰天合售前专家


往期推荐


同时支持iSCSI和NFS,XSKY SDS V5的K8S CSI卷扩展功能是如何炼成的

详解支持 kubernetes CSI的持久化容器存储

信任传承,相伴成长——XSKY助力永赢基金容器云平台建设

XSKY发布“混合云专版”,全协议 + 多场景 + 策略驱动


继续滑动看下一个
XSKY星辰天合
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存